//
//  YLEmptyDataKey.swift
//  Swift-Codedase
//
//  Created by xyanl on 2023/9/12.
//

import Foundation

/// 管理占位符的所有键，每个占位符应该有一个唯一的键
/// 使用Struct而不是enum，因为这里需要扩展case的数量。
public struct YLEmptyDataKey: Hashable {
    
    /// key 值
    public let key: String
    
    /// 创建并返回具有指定键值的YLEmptyDataKey
    /// - Parameter value: key 值
    public init(_ key: String) {
        self.key = key
    }
    
    public func hash(into hasher: inout Hasher) {
        return hasher.combine(key.hashValue)
    }
}

extension YLEmptyDataKey: Equatable {
    
    /// 使PlaceholderKey可哈希 
    public static func == (lhs: YLEmptyDataKey, rhs: YLEmptyDataKey) -> Bool {
        return lhs.key == rhs.key
    }
    
}
